update pango-1.49 to 1.54 (plus deps) #3171
Merged
+45
−147
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Starting with the crashes observed in inkscapes' text widget, pango ('shaping engine' for multi-language text) turned out to be the major suspect. Updating from pango 1.49 to 1.54 is doable (the existing high 1.90 version is apparently a preparation for pango-2.0).
Checking the dependencies, it is required to update libsigc++-3, fontconfig, and cairo too (more about fontconfig at the end of the message). Problems arise when it comes to updating the corresponding C++ bindings.
https://github.com/GNOME/glibmm reads:
" glibmm-2.4 and glibmm-2.68 are different parallel-installable
ABIs. This file describes glibmm-2.68. "
How does this affect the update?
Installed is glibmm-2.66.2-0 (which can be updated to 2.66.7, not urgent), and we see libs like /usr/lib/libgiomm-2.4.so.1.3.0, updating to the latest version (glibmm-2.82.0) would yield libs like libgiomm-2.68.so.1.3.0.
Looking at download.gnome.org/sources, reveals that some older versions of cairomm and pangomm are still maintained until now, these are the ones that work with the 2.4-ABI, whereas the latest and greatest ones would use the 2.68-ABI.
So the C++ bindings used now are cairomm-1.14.5 and pangomm-2.46.4. How to handle the 2.68-ABI shall be decided later (IMHO).
Fontconfig
This update does not try to apply any of the widespread customizations for the config files found in other distros. It may yield to some issues here (corner-cases)?, I have not observed any, but checking is indeed required (Font-issues tend to draw very long trails in discussions and mailboxes).
[pango-crash] https://gitlab.gnome.org/GNOME/pango/-/issues/678
P.S. The Inkscape text issues are gone after the update ...